Programmable electronic devices on containers

ABSTRACT

Systems and methods for sharing resources between multiple processing streams are described. An example method may comprise: receiving data by an electronic display device attached to an object; determining, by the electronic display device, whether the data satisfies a criterion; responsive to determining that the data satisfies the criterion, generating a first message based on the data; wirelessly transmitting the first message to a computing device that is wirelessly connected to the electronic display device; receiving a second message from the computing device; and displaying at least one of the first message or the second message by the electronic display device.

PRIORITY CLAIM TO RELATED APPLICATION

This application is a continuation of U.S. Nonprovisional patentapplication Ser. No. 14/670,575, filed Mar. 27, 2015, entitled“Programmable Electronic Devices On Containers,” which claims thebenefit of U.S. Provisional Patent Application No. 61/993,963, filed onMay 15, 2014, both of which are incorporated by reference herein.

TECHNICAL FIELD

Implementations described herein generally relate to electronic devicesand more particularly to electronic devices with sensors that arecapable of being attached or integrated with objects.

BACKGROUND

Objects such as beverage containers are often decorated with staticdesigns and letters to attract the attention of prospective consumers.The static designs and letters are selected by the manufacturers and arenot modifiable by a distributor, retailer or end consumer. Often in aretail setting, such as a store or bar, the beverage containers areplaced on shelves to enhance their visibility to passing consumers. Inaddition to the fancy static designs, the beverage containers are oftenconstructed of transparent or translucent material, which enhances theaesthetics and may allow the remaining fluid quantity to be externallyvisible so that the inventory may be monitored and replaced whennecessary.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention is illustrated by way of example, and not by wayof limitation, in the figures of the accompanying drawings in which likereferences indicate similar elements. It should be noted that differentreferences to “an” or “one” embodiment in this disclosure are notnecessarily to the same embodiment, and such references mean at leastone.

Reference will now be made to the accompanying drawings showing examplesof the present application, and in which:

FIG. 1 is a block diagram depicting an example system architecture foran electronic display device integrated with an object and wirelesslyconnected to computing devices, in accordance with an example of thepresent disclosure;

FIG. 2 is an illustration depicting an electronic display deviceincluding audio sensors and speech processing capabilities, inaccordance with one example;

FIG. 3 is an illustration depicting an electronic display deviceincluding proximity sensors for detecting activity in the vicinity ofthe electronic display device, in accordance with yet another example;

FIG. 4 is an illustration depicting multiple electronic display devicesintegrated with multiple fluid containers containing fluid sensors andinventory processing capabilities, in accordance with another example;

FIG. 5 is a flow chart of an example of a method for processing data andfor displaying messages on a display of the electronic display device;

FIG. 6 is a flow chart of an example method for processing audio datainto a textual message and displaying the textual message on a displayof the electronic display device;

FIG. 7 is a flow chart of an example method for processing proximitysensor data and displaying a message on a display of the electronicdisplay device;

FIG. 8 is a flow chart of an example method for processing fluid sensingdata and displaying a message on a display of the electronic displaydevice;

FIG. 9 is a block diagram depicting an example system architecture, inaccordance with an example of the present application.

DETAILED DESCRIPTION

Described herein are objects, such as beverage containers, withelectronic devices (e.g., electronic display devices) having sensors andcommunication modules. The sensors may gather data concerning theinternal or external conditions of the object and the communicationmodules may transmit messages based on the data. The data may beprocessed by the electronic device and may be transmitted to a computingdevice (e.g., a mobile device or cloud computing device) for additionalprocessing. The processing of the data may result in a message that maybe displayed by the electronic device to a user and/or by a mobiledevice of the user.

In one example, the object may include an electronic display device withaudio sensors for gathering voice data from a user, which may allow theuser to speak to the object to control what the object displays. Thevoice data may include a voice command and a subsequent message. Theelectronic display device may process the voice data to recognize thevoice command and may also send the voice data to a remote computingdevice for additional processing. The processing may includespeech-to-text translation, which may translate the voice data to atextual message that may be sent to the object. The textual message maythen be displayed by the object using the electronic display device.

In another example, the object may include an electronic device withproximity sensors for gathering data about users in its vicinity. Theproximity sensors may allow the object to detect and identify users inan area as well as gather consumer information from the users. Theobject and/or electronic device may gather the consumer information byusing a combination of motion sensors and communication modules. Forexample, the motion sensors may detect the presence of a user and thewireless communication module may establish a connection with the user'scomputing device. The user's computing device may respond with a welcomemessage (“Hello John Doe”) and the object may display the welcomemessage to attract the attention of the user.

In yet another example, the object may include an electronic device witha fluid-level sensor for gathering data about the quantity of fluidwithin the object. This may allow the object to monitor its contents anddetermine when the object should be replaced. The object and/orelectronic device may accomplish this by processing the data tocalculate a fluid level and comparing the fluid level to a thresholdlevel to determine whether the object should be replaced. The object maythen send a message to a computing device, which may provide a userinterface that enables a user to order a replacement object. Thecomputing device may also respond with a textual message (e.g., “ReplaceMe” or “I have been ordered”) to be displayed by the electronic deviceof the object (e.g., if the electronic device is an electronic displaydevice).

There are shown in the drawings and will herein be described in detailseveral specific examples with the understanding that the presentdisclosure is to be considered as an exemplification of the principlesof the described technology and is not intended to limit the technologyto the examples illustrated.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the invention. Asused herein, the singular forms “a”, “an” and “the” are intended toinclude the plural forms as well, unless the context clearly indicatesotherwise.

It will be understood that like or analogous elements and/or components,referred to herein, may be identified throughout the drawings with likereference characters. It will be further understood that several of thefigures are merely schematic representations of embodiments of thepresent technology.

Embodiments are discussed herein with reference to electronic displaydevices that are mounted to or embedded in a container. However,embodiments also cover other types of electronic devices that mount toor are embedded in a container. Such other electronic devices may relyon displays of computing devices (e.g., of mobile devices carried byusers) to display messages. Accordingly, it should be understood thatdiscussion of electronic display devices herein also applies to othertypes of electronic devices that do not have displays.

Referring to the figures, FIG. 1 is a block diagram depicting an examplesystem architecture 100 including an electronic display device 110 andone or more computing devices 120A and 120B. Electronic display device110 may be communicably coupled to the one or more computing devices120A and 120B using connections 130A-D and network 140. In one example,electronic display device 110 may be a portable display associated withan object or a part of (e.g., integrated into) an object, such as abeverage container. Alternatively, an electronic device that does notinclude a display may be used.

Electronic display device 110 may include a display module 112, a sensormodule 114, a communication module 115 and data processing modules 116.Display module 112 may include an electronic visual display that may beilluminated to display an image or alphanumeric message. The image oralphanumeric message may be static or may be displayed in a manner thatappears to show movement (e.g., motion picture or scrolling text). Theelectronic visual display may include light emitting diodes (LEDs),organic light emitting diodes (OLEDs), liquid crystal display (LCDs), orother similar display technology. Display module 112 may have a varietyof sizes and include pixels of various colors. In one example, displaymodule 112 may cover a portion of an object's exterior face or theentire exterior face of the object in all angles (0 degrees to 360degrees).

Sensor module 114 may include one or more sensor devices for gatheringdata associated with the object. The sensor devices may include audiosensors (e.g., microphones), motion sensors (e.g., accelerometer,gyroscope, etc.), fluid measuring sensors (e.g., mechanical gyrator),lights sensors (e.g., ambient light sensor), location sensors (e.g.,global positioning system sensors (GPS)), temperature sensor (e.g.,thermometer), or other similar sensing devices. Data generated by sensormodule 114 may be processed locally by the electronic display device 110and/or remote from electronic display device 110. For example, an audiosignal may be analyzed and packaged locally to electronic display device110 and may be sent to a remote device to perform speech to textprocessing.

Data processing modules 116 may include one or more modules forprocessing data (e.g., sensor data) to determine a message to display.Data processing modules 116 may include hardware, software, firmware, ora combination thereof. The hardware may include a processing device andmemory blocks. Data processing modules 116 may be software or firmwaremodules stored in the memory and executed by the processing device inone embodiment. Data processing modules 116 may include a speechprocessing module 117, a proximity processing module 118 and aninventory processing module 119.

Speech processing module 117 may access voice data from the audio sensorand may process the voice data to translate it into text. In oneexample, speech processing module 117 may interact with a speechprocessing module on a remote computing device in order to translate thevoice data. The speech to text capability may be used for programmingthe portable display. For example, a user may say the words “Happy NewYear” into the microphone and the speech processing module 117 mayreceive audio data from the microphone and process the audio data toidentify the words and generate a corresponding textual message. Theelectronic display device 110 may then display the text “Happy NewYear.” Proximity processing module 118 may access data gathered by theproximity sensor and may process the data to determine whether a user(e.g., consumer) is in the area. In one example, proximity processingmodule 118 may determine consumer information corresponding to the userand may generate a textual message (e.g., a greeting) in response.Inventory processing module 119 may access data gathered by a fluidlevel sensor and may process the data to determine whether a message isto be displayed to the user or sent to a computing device (e.g., to auser's mobile device and/or to a server computing device) to instructthe user to replace the bottle.

Communication module 115 may enable electronic display device 110 toreceive and transmit messages. Communication module 115 may include atransmitter, receiver, transceiver, memory, antenna, and so forth forcommunicating with a computing device. Such communications may bebetween an object and one or more remote computing devices (e.g., 120Aand 120B) or from object to object (e.g., beverage container to beveragecontainer), object to a smartphone, computer, tablet, etc., or object toa local router. The messages may be received or transmitted throughspecific channels locally or over longer distances.

Communication module 115 may utilize any commercially available wired orwireless communication protocol, whether standardized or proprietary.When using a wireless protocol it may utilize any portion of theelectromagnetic spectrum (e.g., radio, optical, infrared). Exemplarywireless connections may include Bluetooth®, Bluetooth low energy (BLE),Near Field Communication (NFC), Wi-Fi®, infrared (IR), Linux® wireless,Zigbee®, any other low frequency RF modulation, microwave, radar, orother similar connections. Wireless connections may include ranges ofvarious transmission frequencies ranging from 0 Hz to Infinite Thz.Exemplary transmission ranges may include the following:

sub Hz < 3 Hz Sub Hertz ELF  3 Hz-30 Hz Extremely Low Frequency SLF  20Hz-300 Hz Super Low Frequency ULF 300 Hz-3 kHz Ultra Low Frequency VLF 3 kHz-30 kHz Very Low Frequency LF  30 kHz-300 kHz Low Frequency MF 300kHz-3 MHz Medium Frequency HF  3 MHz-30 MHz High Frequency VHF  30MHz-300 MHz Very High Frequency UHF 300 MHz-3 GHz Ultra High FrequencySHF  3 GHZ-30 GHz Super High Frequency EHF  30 GHz-300 GHz ExtremelyHigh Frequency Sub-M 300 Ghz- Infinite THz Sub Millimeter

Communication module 115 may be used to initiate or establishconnections 130A-D, which may include wireless or wired connections.Connections 130A-D are example connections for communicable coupling ofelectronic display device 110 to one or more computing devices 120Aand/or 120B. Connections 130A-D may include direct connections andindirect connections. Direct connections (e.g., connection 130A) maydirectly connect electronic display device 110 with computing device120A and may not use any intermediate networking elements (e.g., accesspoint, router, switch, hub) to connect the devices. This may beimplemented using a wireless technology such as Bluetooth, Peer-to-PeerWi-Fi, or infrared. An indirect connection may include multipleconnections 130B and 130C a network 140 or multiple networks. Anindirect connection may also utilize a direct connection, for example,electronic display device 110 may utilize a direct connection (e.g.,130A) with computing device 120A to indirectly communicate withcomputing device 120B, as shown by connection 130A→130C→130D.

Network 140 may include a public network (e.g., the Internet), a privatenetwork (e.g., a local area network (LAN) or wide area network (WAN)), awired network (e.g., Ethernet network), a wireless network (e.g., an802.11 network or a Wi-Fi network), a cellular network (e.g., a LongTerm Evolution (LTE) network) and may include a wireless access point,network routers, switches or other similar network devices orcombination thereof.

In other examples, communication module 115 may include ports for awired connection, such as a universal serial bus (USB) port, a serialport, or other similar communication port. Exemplary wired connectionsmay include USB, Micro USB, Mini USB, institute of electrical andelectronics engineers (IEEE) 1394 (such as Firewire®), or other similarconnections.

Computing devices 120A and 120B may be any devices capable ofcommunicating with electronic display device 110, including mobiledevices (e.g., such as smart phone, tablet computer, laptop, etc.) ornon-mobile devices (e.g., such as desktops, servers or cloud basedcomputing devices). In one example, computing device 120A may be amobile device and computing device 120B may be a physical machine and/orvirtual machine that hosts a web platform (e.g., a cloud-based service).Electronic display device 110 may be communicably coupled to computingdevice 120B (e.g., cloud-based service) through computing device 120A,network 140 or a combination of both. This may allow computing device120B (e.g., cloud device) to receive messages initiated by theelectronic display device 110 and to generate and transmit messages toelectronic display device 110 for display. In another example, theelectronic display device 110 may be communicably coupled with computingdevice 120B (e.g., cloud computing device) using connections 130B and130D and therefore without communicating via computing device 120A.

Computing devices 120A and/or 120B may function as a web platform (e.g.,cloud-based service). The web platform may be configured to enableturning an object including or associated with electronic display device110 into a billboard, offer advertisements directly on the web platform,or offer downloadable applications right to the object itself.Optionally, the web platform may generate a marketing channel by sellingaccess to the channel. For example, the object including the electronicdisplay device 110 may be preprogrammed to only receive advertisementson transmission of a specific pin or code. In another example, the webplatform may have accounts and grant authorization to specific accountsto send advertisements to objects. In another example, the web platformmay entice people to 1) program objects or beverage containers, 2)interact with other people, and 3) manage their applications. The webplatform may allow programmers to build and sell their own applicationsfor the containers or objects. In various examples, an alternatecentralized system and method for channel control may be used (e.g.,Centralized Medea Ad Space Channel). Such a centralized system maycontrol messages to individual, segmented, targeted, and universalobjects and vendors. Optionally, the system may allow cross selling ofadvertisement space on the objects to non-alcoholic or various producttypes. For example, ad space may be sold on alcoholic objects toMercedes®, Coca-Cola®, etc.

Computing devices 120A and 120B may include respective user interfacemodule 122 and data processing modules 126 such as speech processingmodule 127, proximity detection module 128 and inventory processingmodule 129. The modules may include hardware, software, firmware or acombination thereof. User Interface modules 122 may include anapplication that may run (e.g., execute) on computing devices 120A and120B and may allow a user to interact with and configure the electronicdisplay device 110. User interface module 122 may allow a user toidentify a specific object (e.g., an object that includes electronicdisplay device 110). For example, the user may utilize user interfacemodule 122 to input an object identification number by scanning, typing,or speaking a number. This may then enable the application to configurethe electronic display device for that particular object (e.g., abottle), which may include setting the display message.

In one example, the user interface module 122 may be a downloadableapplication for a mobile device. For example, mobile devices may includeAndroid, iPhone, or Blackberry devices capable of running a softwareapplication (e.g., Android Smart Bottle software App, iPhone SmartBottle software App, Blackberry Smart Bottle software App, etc.). Theapplication may allow a user to wirelessly program an electronic displaydevice of an individual object or container directly through the mobiledevice. In other embodiments, the electronic display device may becontrolled through hands-free voice commands. Similarly, the applicationmay be operated by voice commands.

In one embodiment, the invention may include a social media experience.The electronic display device 110 may utilize the wireless connection130B and receive or download a program or application for entertainment,e.g. a drinking game connected to an application. In another example,the user interface module 122 may be an application on a web platform orsocial media platform.

Data processing modules 126 of computing devices 120A or 120B mayinteract with data processing modules 116 of electronic display device110 to perform functions. For example, speech processing module 127 mayinteract with speech processing module 117 to analyze and process voicedata to translate it into text. Inventory processing module 128 mayinteract with inventor processing module 118 to determine, for example,whether an object has a fluid level below a threshold level. Responsiveto determining that the fluid level is below the threshold level,inventory processing module 119 and/or inventory processing module 129may prompt a user to order a replacement object.

Electronic display device 110 may be preprogrammed or accept programming(e.g., configuration settings) from a user either directly via an inputdevice on the electronic display device or from remote computing devices120A or 120B.

In one example, display module 112 may be used for advertising ordisplaying various images or messages, such as greetings, calendarevents (e.g., birthdays, anniversaries, holiday messages, events ofcultural significance). Optionally, the display module may utilizeanimated images or messages. For example, messages may scroll from anydirection, strobe, glow, etc.

The messages or images may allow the objects to serve as an advertisingor marketing channel. The marketing channel may allow for multiplelevels of distribution (e.g., directly to customers, through adistributor, etc.). A customizable communication or message allows formaximum flexibility. A cloud service may also provide other services tothe portable device. For example, the cloud service may provide anadvertising service that periodically downloads advertisements to theportable display. In some embodiments in which display module 112 is notincluded, the system architecture 100 includes an electronic deviceother than an electronic display device. The electronic device mayinclude the sensor module 114, communication module 115 and dataprocessing modules 116.

Referring now to FIG. 2, there is provided an illustration depicting asystem 200 having an electronic display device 210 including an audiosensor 214 and speech processing capabilities. System 200 may includeobject 205, electronic display device 210, computing device 220, firstmessage 232, second message 234 and user 250. In one embodiment,electronic display device 210 may correspond to electronic displaydevice 110 of FIG. 1.

Object 205 may be a container for holding items or fluid. The fluid maybe a human consumable fluid such as a beverage or may be fluid foranother purpose. In one example, object 205 may be a beverage containerthat contains an adult beverage such as alcohol. While the followingembodiments describe the invention in relation to beverage containers(e.g., bottles for alcoholic or non-alcoholic beverages, glasses, cups,etc.), it should be understood that the invention is not solely limitedto these embodiments and may be applied to other containers or objects.In the embodiments described below, the object 205 may be made ofvarious material, such as aluminum, plastic, glass, ceramic, metal,crystal, or other similar materials.

Electronic display device 210 may be attached to object 205, such thatit appears to be integrated with the object 205. In one example, theelectronic display device 210 may utilize an attachment mechanism (e.g.,clip, magnets, adhesive) to attach to object 205 while the object is inuse or on display. The electronic display device 210 may be detachedfrom the object 205 via the attachment, such as for use on anotherobject. For example, electronic display device 210 may be attached to abeverage container while the beverage container contains fluid. However,once the beverage container is empty, electronic display device 210 maybe removed from the beverage container and temporarily attached toanother object.

In some examples, electronic display device 210 may be a device thatconforms to the shape of the object and attached thereto, such as bywrapping or snapping onto the object (e.g., a bottle). Such anelectronic display device 210 may adapt to any shape or size ofcontainer or other object. Optionally, such an electronic display device210 may have a flexible screen or include a flexible image filmtechnology to wrap around or as a “sleeve” to any object or container orproduct wrapper. For example, the electronic display device 210 mayinclude a module with active components (e.g., LEDs, processing device,memory, battery, etc.) that is connected to a sleeve that can fit arounda bottle. The sleeve may be plastic, polymer, rubber, or other flexiblematerial. The sleeve may stretch to conform to the shape of the objectthat it is fit around. Optionally, portable displays may beinterchangeable between objects and be associated with the object it isattached to. Other embodiments may include a an electronic device moldedor printed onto the outer surface of the object or embedded within thematerial of the object. Such an electronic device may include a displaythat is visible when viewing the object. The electronic device may bepowered using a power source, such as a battery, solar cells, or othersimilar power sources.

Electronic display device 210 may also include a sensor module (e.g.,such as sensor module 114 of FIG. 1) having an audio sensor 214 orsimilar sensor device capable of capturing sounds (e.g., a microphone)and transforming it into data. The data may take the form of an audiosignal that may be stored locally in a memory of the electronic displaydevice 210, or may be transmitted to a local processing device ofelectronic display device 210 to be processed. Alternatively, or inaddition, the data may be transmitted to computing device 220 forprocessing.

In one embodiment, a processing device of electronic display deviceexecutes a speech processing module. The processing device may processthe data to determine whether the data satisfies a criterion, such aswhether the data includes legible speech (e.g., over a decibelthreshold) or whether the voice data exists for a duration of time thatexceeds a duration threshold (e.g., 2 seconds). The processing devicemay measure one or more acoustical features of the data such asloudness, pitch, bass, brightness, bandwidth, Mel-frequency cepstralcoefficients (MFCCs), and so forth. The processing device mayadditionally determine other characteristics of the data, such as aduration of time associated with the data (e.g., a duration of time thesound was recorded). In one embodiment, processing performed by theprocessing device may include generating a Fourier transformation of thedata and/or generating a feature vector of the data. If one or more ofthe acoustical features and/or other characteristics of the data satisfyone or more criteria, then the data may be stored, transmitted, oradditionally processed, and/or a message may be sent to computing device220. For example, if the data satisfies the criteria it may be includedin a first message 232 to computing device 220. If the data does notsatisfy the one or more criteria, then the data may be deleted and/or nofurther action may be taken with respect to the data.

First message 232 may be sent from electronic display device 210 tocomputing device 220 over connection 230. In one example, the firstmessage 232 may include a portion of the audio signal as raw voice data.In another example, the voice data may undergo pre-processing prior tobeing packaged within first message 232. The pre-processing may includecompressing the audio signal or removing portions of the audio signalthat do not include voice data. For example, there may be five secondsof raw voice data and the pre-processing may trim the portion of theaudio signal before the speech began and the portion after the speechconcluded. The preprocessing may also remove the blank portions of theaudio signal between words and tokenize the voice data.

Tokenizing the voice data may include identifying the beginning and endsof words and subsequently separating the audio signal based on the wordsso that there is approximately one token for each word. Alternatively,tokenizing the voice data may involve separating a voice command portionof the voice data from the body of the voice command. For example, ifthe user says “Display Message Happy Holidays” the pre-processing mayidentify the first portion (e.g., “display message”) as being a voicecommand and may make that a token and then make the remaining portion“Happy Holidays” into another token. In this situation, the firstportion may be processed locally by the processing device of theelectronic display device and the remaining portion may be includedwithin first message 232 and sent over the connection to computingdevice 220 to be processed by a speech processing module of computingdevice 220.

Pre-processing the data including the audio signal may additionally oralternatively include compressing the audio signal. For example, theaudio signal may be compressed using a lossy or lossless audiocompression algorithm. For example, the audio signal may be processedinto one or more waveform (WAV) audio files, audio interchange fileformat (AIFF) audio files, AU audio files, or other uncompressed audiofiles. Alternatively, the audio signal may be processed into a losslesscompression audio file format (e.g., free lossless audio codec (FLAC),true audio (TTA), Apple lossless (m4a), Windows media audio lossless(WMA lossless), etc.) or a lossy compression audio file format (e.g., anMP3 audio file format, Vorbis, advanced audio coding (AAC), OGG, etc.).

Computing device 220 may be a mobile device, such as a smartphone thatis able to receive first message 232 and subsequently transmit secondmessage 234 (e.g., response). In one example, computing device 220 mayrely on another computing device (e.g., remote server) to process firstmessage 232 and generate second message 234. In another example,computing device 220 may process first message 232 to generate secondmessage 232. Either or both computing devices may be equipped with aspeech processing module that may perform speech to text translation(e.g., speech recognition) on the audio signal included within firstmessage 232. The computing device may process the audio signal locallyusing a combination of hardware and software and may send the message toanother computing device (e.g., a server, cloud device, etc.) to performspeech recognition. The results of the speech recognition may bemodified by computing device 220 and/or the server to addresstranslation problems based on sentence structure or context, forexample, “Mary Christmas” may be changed to “Merry Christmas”) and maybe formatted as a textual message. The textual message may be includedin second message 234 and sent back to electronic display device 210. Asshown in FIG. 2 computing device 220 is a mobile device. However, inother examples computing device 220 may be a cloud computing device, webplatform, server, desktop, laptop or other similar computing device.

Second message 234 may include the textual message and may be used totransmit the textual message from the computing device 220 to electronicdisplay device 210. In response to receiving second message 234, theelectronic display device 210 may format textual message into displaymessage 213 (e.g., “Happy Holidays”) and/or present it to user 250 byilluminating display module 212 (e.g., by outputting the textual messageto display module 212).

In an alternative example, electronic display device 210 may include aconnection 230 to a wireless local area network (WLAN), and through theWLAN to a remote cloud service. The remote cloud service may program theelectronic display device 210, and/or may provide remote processingservices for the electronic display device 210. For example, a speechprocessing module of electronic display device 210 may cause electronicdisplay device 210 to transmit voice data to the cloud service via theWLAN connection. The cloud service may process the speech data toidentify the words that were spoken, and may send text (e.g., ASCIIcharacters) to the electronic display device 210. Accordingly, the cloudservice may provide speech recognition to electronic display device 210.

FIG. 3 is an illustration depicting a system 300 having an electronicdisplay device 310 that has one or more sensors (e.g., motion sensor314) for detecting activity in the vicinity of an object 305. Whenactivity is detected, the electronic display device 310 may provide oroutput a consumer targeted display message. The targeted display messagemay include a personalized greeting that may identify a detectedconsumer by name. In one example, a communication module 315 of theelectronic display device 310 may detect a computing device 320. Forexample, the communication module 315 may be a Bluetooth module or Wi-Fimodule that outputs a signal. Computing device 320 may additionally haveits own Bluetooth module or Wi-Fi module, which may also output asignal. When communication module 315 receives a signal from theBluetooth or Wi-Fi module of computing device 320, it may identify thecomputing device 320 based on that signal. In one embodiment, computingdevice 320 executes an application associated with electronic displaydevice 310. The application may cause computing device 320 to identifyto electronic display device 310 a user account logged into theapplication. This may enable the electronic display device 310 toperform one or more actions with respect to the user account.

In one embodiment, electronic display device 310 sends a message to thecomputing device 320 directed to the user account. For example, themessage may be a personalized message that welcomes a user associatedwith the user account to a bar or other establishment that owns theobject 305. The message may also be a personalized advertisement orother personalized message. This message may be displayed on thecomputing device. In one embodiment, electronic display device 310presents a message on the display of the electronic display devicedirected to the user account. For example, the object's electronicdisplay device 310 may detect a customer's phone in a bar through aninstalled mobile application on the phone and send an advertisement tothe phone and/or display a greeting through the display on theelectronic display device 310. Optionally, messages may be sent to theelectronic display device 310 or computing device 320 through a webplatform (e.g., cloud computing device) or various social mediaplatforms (e.g., Facebook®, Twitter®, etc.).

The electronic display device 310 may also receive instructions from thephone or other computing device 320, and may output a display inaccordance with the received instructions. For example, when a customerwalks into a bar having beverage containers with attached electronicdisplay devices as described herein, the customer's mobile device maysend a message to the electronic display devices announcing thecustomer's entrance. The electronic display devices may then display thecustomer's name for a time period.

As shown in FIG. 3, system 300 may include object 305, electronicdisplay device 310, motion sensor 314, communication module 315, speaker316, computing device 320 and user 350. Electronic display device 310may be attached to object 305 and may include one or more motion sensors314 for gathering data from the surroundings of object 305, which mayinclude user 350. The motion sensor 314 may be, for example, an opticalmotion sensor, a microwave motion sensor or an acoustic motion sensor.In one example, motion sensor 314 may be an active motion sensor thatmay emit an electromagnetic field or a beam of electromagnetic radiationand detect changes in the field or return signal. In another example,motion sensor 314 may also be a passive motion sensor that detectschanges to the surrounding without emitting any radiation.

Additionally, or alternatively, electronic display device 310 mayinclude a proximity sensor able to detect the presence of nearby peopleor other objects without physical contact. The proximity sensor may bebased on photoelectric sensing, capacitive sensing, inductive sensing orother similar sensing mechanism.

Electronic display device 310 may include communication module 315(e.g., Bluetooth), which may also function as a proximity detector asdescribed above. Communication module 315 may periodically scan (e.g.,every 1 min, 60 min) the area to detect computing device 320 or may betriggered by motion sensor 314. In one example, when motion sensor 314detects a user in the vicinity it may trigger communication module 315to scan the area searching for computing device 320. When computingdevice 320 is detected, communication module 315 may initiate orestablish a connection with computing device 320. In one example, theconnection may allow electronic display device 310 to probecommunication device 320 to determine if the computing device includesthe user interface module associated with an electronic display device(e.g., smart bottle app). In another example, computing device 320 mayestablish a connection if the user interface module has been configured(e.g., installed, running). In such an embodiment, the existence of anestablished connection may indicate that the computing device includesthe user interface module.

Once electronic display device 310 has established a connection withcomputing device 320, the electronic display device 310 may transmitfirst message 332 to computing device 320. First message 332 may includea request for information, such as user identification information or apersonal greeting. In response to receiving first message 332, computingdevice 320 may access the settings associated with the user interfacemodule. The settings may include a user's preconfigured personalgreeting data and identification data. This data may then be includedwithin a second message 334 and sent from the computing device 320 tothe electronic display device 310. In one example, the personal greetingmay be a textual message, such as “Hello” and the identificationinformation may be a textual message, such as the person's name (e.g.,John Doe). In another example, second message 334 may also include anaudio message for enunciating the message. After receiving secondmessage 334, the electronic display device 310 may welcome the user byactivating the display and/or speaker and causing the display and/orspeaker to output contents of the second message. This may includeilluminating electronic display device 310 with the textual message orby announcing the audio message using speaker 316. As shown in FIG. 3computing device 320 is a mobile device. However, in other examples theprocessing to generate the second message may be performed by a cloudcomputing device, web platform, server, desktop, laptop or other similarcomputing device.

In addition to the proximity example discussed above, the electronicdisplay device 310 may also utilize other motion sensors such asaccelerometers and/or gyroscopes that are on the object or in thesurrounding area for sensing movement of the object 305. Such motionsensors may be connected to transmitters or receivers on the object toprovide information to social media platforms or mobile deviceapplications as the object (e.g., beverage container) is poured or movedor the display activated. Alternatively, or additionally, the motionsensors may activate the electronic display device 310 and/or causemessages to be scrolled across the display of the electronic displaydevice 310 when certain motion signatures are detected. For example, themotion sensors 314 may detect that the object has been tapped and inresponse may cause the electronic display device to turn on ortransition out of a low power state. The electronic display device 310may also transmit a command to other nearby electronic display devicesto cause those electronic display devices to turn on.

Other types of motions such as vibrations or particular motionsignatures may also be used to turn on the electronic display deviceand/or cause the electronic display device to output particularmessages. For example, the electronic display device may detect when anobject is upside down, and may output a particular message when theobject is upside down. The electronic display device may also detect ifthe object is shaken, or twirled, or moved in an arc or circle, etc.,and may output particular messages associated with these motionsignatures.

In one embodiment, motion signatures may be stored by the electronicdisplay device 310. When a motion is detected, electronic display device310 may compare a detected motion to stored motion signatures. Eachstored motion signature may be associated with a particular messageand/or action. If a match is identified between the detected motion anda stored motion signature, the associated message may be output and/orthe associated action may be performed. Examples of actions includesending a message to a computing device and/or posting a message to asocial media platform. Alternatively, computing device 320 may store themotion signatures, and electronic display device 310 may send a recordedmotion to computing device 320 for comparison to stored motionsignatures. Computing device 320 may then notify electronic displaydevice 310 is any match to a stored motion signature is identified.

FIG. 4 is an illustration depicting a system 400 including electronicdisplay devices with fluid sensors and inventory processingcapabilities. This may allow electronic display devices 410A-C (or otherelectronic devices) to monitor the fluid levels of associated objects(e.g., bottles to which the electronic display devices 410A-C areattached) and notify users when the fluid levels drop below a thresholdlevel. Electronic display devices 410A-C may notify the user bydisplaying a message or sending a notification (e.g., alert) to acomputing device 420.

As shown in FIG. 4, system 400 may include multiple electronic displaydevices 410A-C that are attached to multiple objects 405A-C,respectively. Each electronic display device 410A-C may include a levelsensor (not shown) for identifying a respective fluid level 460A-C. Thelevel sensor may be a continuous-level sensor that provides continuousmeasurements across a range of fluid levels or may be point-level sensorthat detects whether the substance is above or below a specific sensingpoint. The level sensor may be placed anywhere in or on the object. Thelevel sensors may be connected to a transmitter, which may signal theamount of liquid in the object along with the liquid specificity rangefor said liquid. In one embodiment, electronic display devices 410A-Ccorrespond to electronic display device 110 of FIG. 1, and eachelectronic display device includes a sensor module that includes one ormore level sensors.

The level-sensor may utilize multiple different mechanisms to detect thefluid level. In one example, the electronic display device may include amechanical gyrator for detecting the fluid level of the object. Themechanical gyrator may determine the fluid level by monitoring themotion of the bottle as well as the reactive motions of the fluidcontainers. For example, the gyrator may sense when the object'sposition is altered (e.g., tipping bottle to pour). The gyrator may alsosense the subsequent movements that result from the fluid in the objectshifting, for example, the rotational force generated when the fluidwithin the object impacts the top of the fluid container. The levelsensor may also take into account the duration of time between themovement of the bottle and subsequent fluid movements. These motionmeasurements may be compared to motion fingerprints that are associatedwith various quantities of fluid to approximate the fluid level. Inanother example, the level sensor may include a float device 455 thathas a specific gravity that is less than the fluid, which may cause thefloat device to remain at the top surface of the fluid. The level sensormay identify the location of the float and therefore determine the fluidlevel. Level sensor may utilize other mechanisms to measure the fluidlevel, such as ultrasonic, conductive, infrared, magnetic, pneumatic orother similar methods for detecting a level of a fluid. For example, anoptical level sensor may include an optical emitter (e.g., an infraredemitter) and an optical detector (e.g., and infrared detector). Theoptical emitter may emit a light beam. The light beam may travel throughthe object and be reflected off of a wall of the object. An index ofrefraction of a liquid in the object may be different from an index ofrefraction of air. Accordingly, the reflected optical beam may not bedetected (or may be detected) by the optical detector if the fluid leveldrops below a location of the optical emitter and/or the opticaldetector.

Each electronic display device 410A-C may be configured to modify thethreshold level and the type of notification that occurs when the fluidlevel drops below the threshold level. Alternatively, the thresholdlevel may be preconfigured, and may be the same for each object. Asshown by object 405A, the threshold level 465A may be set atapproximately one quarter of the bottle. This may be set by thecomputing device 420 or may be a default value set by a manufacturer ordistributor. When the fluid level drops below threshold level 465A, asshown by fluid level 460A a notification may be generated. The type ofnotification may be modifiable. For example, electronic display device410A of object 405A may be configured to illuminate the display with acustomizable textual message, such as, display message (i.e., “REPLACEME”). The notification may also include an additional message (e.g.,alert) sent from electronic display device 410 to computing device 420.The message may include the current fluid level or may indicate theobject needs to be replaced without indicating the fluid level. Eachobject 405A-405C may periodically report its fluid level to computingdevice. Computing device may use this information to determine inventorylevels.

Computing device 420 may receive the additional message and present analert message or present a user interface 422 for assisting the user toreplace the bottle. The alert message may be in the form of a popupdialog or may be sent in the form of an email or text message or othersimilar alert mechanism. The user interface 422 may be presented on adisplay of the computing device 420, and may provide a list of stores ora map with the geographic locations of the stores emphasized. The storesmay be emphasized using some form of marking such as pins. The userinterface may provide contact information, store hours, directions orother information to help facilitate the replacement of object 405A. Asshown in FIG. 4, computing device 420 is a mobile device. However, inother examples computing device 420 may be a cloud computing device, webplatform, server, desktop, laptop or other similar computing device.

In an alternate example, when the fluid-level sensor indicates theobject's contents are low, the inventory processing module mayfacilitate direct online ordering. Such direct online ordering may occurin response to the electronic display device transmitting the firstmessage to the application that the object is nearly empty. In addition,the commuting device 420 may offer to scan an identifier to purchase anew object. In one example, the inventory processing module may receivethe input of a code from a shipment of a case of objects into acomputing device. The input may be accomplished through manuallyentering a code, scanning or taking a picture of a barcode, QR code, orother commercial code. Optionally, the input may be done to a websiteinstead of an application. Processing done by the computing device 420may monitor the level of the contents or the number of objects left.Messages may be transmitted to the computing device 420 to indicate thatthe object level is low and to get a new object ready.

Additionally, when the shipment is about to run out (e.g., only one ortwo objects remain) a message may be displayed on computing device toorder more. Optionally, the message may include an offer to send theorder request directly to a distributor to provide another shipment.Thus, reducing the hassle of taking stock and ordering. In one example,the application may further assist in inventory management or serve as asoftware inventory reader. For example, the application may compile anddisplay additional information, such as how long it took to go through ashipment for a particular beverage, how many objects are left, etc.Thereby assisting a user in determining demand.

As shown by object 405B, electronic display device 410B may also utilizethe fluid level to determine whether the object is full (e.g.,un-opened). This may be accomplished by comparing fluid level 460B withthe fluid level of a full object, which may be a pre-configured levelassociated with the object. When the electronic display device 410Bdetermines the bottle is still full the electronic display device 410Bmay generate one or more notifications. The notification may be similarto the notifications discussed above, however the textual message mayattempt to elicit a response from a user (e.g., consumer). For example,the textual message may be “Open Me” or “I am lonely,” “Don't ForgetAbout Me” or other similar message.

As shown with object 405C, the electronic display device 410C may alsoutilize the fluid level sensor to determine whether the bottle hasremained at the same level for an extended period of time at which pointit may generate a notification to encourage consumption. The electronicdisplay device 410C may be configured with a timer mechanism that checksthe fluid level at a predetermined duration of time, for example, it maycheck fluid level 460C every hour, 24 hours, week, month or othersimilar duration of time. The electronic display device 410C may also becapable of storing fluid level 460C at different points in time andcomparing them to subsequent fluid levels to determine whether the fluidlevel has change during the duration of time. When the electronicdisplay device 410C determines that the fluid level has not changed itmay generate a notification. The notification may be similar to thosediscussed above and may include a textual message such as displaymessage 413C (i.e., “Drink Me, It's Been 24 Hrs”) or other similarmessage that displays the duration of time since fluid level 460C haschanged. In other examples, the electronic display device 410C mayutilize motion sensors (e.g., accelerometers, gyroscopes) in combinationwith, or as an alternative to, the fluid level sensor in order todetermine whether the bottle has remained at the same fluid level (e.g.,remained unused).

Multiple electronic display devices may be configured by a singlecomputing device. As shown in FIG. 4, multiple electronic displaydevices 410A-C may each be connected to computing device 420, and may beconfigured by computing device 420 to function as requested by a user.In one example, a user may modify the configuration settings of multipleelectronic display devices 410A-C and with a single action may push thesettings to each of the electronic display devices 410A-C. In anotherexample, computing device 420 may modify the configurations whiledisconnected from the electronic display device 410A-C, and after theuser has completed the modifications may subsequently connect to theelectronic display devices to push the configurations to the respectiveelectronic display devices 410A-C.

In an alternate example, the electronic display devices 410A-C maycommunicate with one another in a peer-to-peer manner. This may allowcomputing device 420 to communicate with electronic device 410B throughelectronic display device 410A without connecting directly to electronicdisplay device 410B. Computing device 420 may utilize this feature toconfigure multiple bottles by pushing the configurations to oneelectronic display device (e.g., 410A) and that electronic displaydevice may function as a hub and push the configurations to each of theother electronic display devices (e.g., 410B and 410C). In anotherexample, the electronic display devices may be configured to be daisychained such that an electronic display device may route messagesbetween other electronic display devices without the other electronicdisplay devices being directly connected. For example, object 405A maycommunicate with object 405C by sending messages through object 405B.

In an alternative example, the objects may communicate with one anotherby communicating through the communication device, for example object405A communicates to object 405B by sending messages from object 405A tocomputing device 420 which sends (e.g., forwards) the messages to object405B. In another example, object 405A may send other information such asviral messages, images, advertisements etc. to one or more of the otherobjects 405B and 405C.

FIGS. 5-8 depict flow charts of multiple illustrative examples ofmethods 500, 600, 700 and 800 (hereafter “methods”) for receiving datafrom a sensor and providing messages to a user. Method 500 may include ahigh-level description of various operations whereas methods 600, 700and 800 may include example methods discussing speech processing,proximity detection and inventory processing respectively. The methodsand each of their individual functions, routines, subroutines, oroperations may be performed by processing logic of the electric displaydevice or computing device executing the method. The processing logicmay include hardware, software, firmware, or a combination thereof. Forexample, processing logic may include a general purpose and/or specialpurpose processor that executes instructions for performing the methods.In certain implementations, the methods may be performed by a singleprocessing thread. Alternatively, the methods may be performed by two ormore processing threads, each thread executing one or more individualfunctions, routines, subroutines, or operations of the method. In anillustrative example, the processing threads implementing the methodsmay be synchronized (e.g., using semaphores, critical sections, and/orother thread synchronization mechanisms). Alternatively, the processesimplementing the methods may be executed asynchronously with respect toeach other.

Referring to method 500, at block 501, processing logic of an electronicdisplay device or other electronic device may attach to an object andmay receive data. The data may be gathered by a sensor device associatedwith or included in the electronic display device, and may betransmitted from the sensor device to a processing device of theelectronic display device or other electronic device for subsequentprocessing.

At block 502, processing logic of the electronic display device or otherelectronic device may determine whether the data satisfies a criterion.The criterion may depend on the type of sensor device from which thedata was received. In one example, the criterion may assess the qualityor reliability of the sensor data. For example, if the sensor device isa microphone, the criterion may be satisfied if the sensor data includesa sufficient duration or quality of voice data for speech processing. Inanother example, the criterion may be a threshold. For example, if thesensor is a fluid level sensor, then the criterion may be a fluid levelthreshold that is satisfied if a detected fluid level is below the fluidlevel threshold. In another example, the sensor may be a motion sensorsuch as an accelerometer or gyroscope, and the criterion may be a matchof a detected motion to a motion signature. If the criterion is notsatisfied, the method may branch back to block 501 to continue receivingdata. If the criterion is satisfied, the method may proceed to block503.

At block 503, the processing logic may generate a first message based onthe data and/or based on satisfaction of the criterion. The firstmessage may include data gathered by the sensor device (e.g., raw data)or may include preprocessed data. The first message may also include arequest for additional information based on data received by the sensordevice.

At block 504, the processing logic of the electronic display device orother electronic device may transmit the first message to a computingdevice that is wirelessly connected to the electronic display device.The wireless connection is a connection that includes at least a portionthat is wireless and does not require that both devices be directlywirelessly connected to each other (e.g., paired) or to a network. Forexample, a wireless connection may be a direct wireless connectionbetween devices or it may be a wireless connection to an access pointwherein some or all of the remaining portion of the communication pathis wired. In one embodiment, the method further includes establishingthe wireless connection to the computing device.

The operations of blocks 505-506 are applicable if the electronic deviceis an electronic display device. At block 505, the processing logic ofthe electronic display device may receive a second message from thecomputing device. In one example, the second message may include aresponse to a request included within the first message. In anotherexample, the second message may include translated results correspondingto data included in the first message.

At block 506, the processing logic of the electronic display device maydisplay at least one of the first message or the second message. Themessages may include a textual message displayed by the visual displayof the electronic display device. The message may be displayed as arolling message that scrolls across the display or may be a flashing orstatic message. Responsive to completing the operations described hereinabove with references to block 506, the method may terminate.

FIG. 6 is a flow chart of an example method 600 for processing audiodata into a textual message and displaying the textual message on avisual display of the electronic display device. At block 601, theprocessing logic of the electronic display device may receive datagathered by an audio sensor (e.g., microphone) of the electronic displaydevice while attached to an object (e.g., beverage container).

At block 602, the processing logic of the electronic display device mayprocess the data (e.g., audio signal). The processing may include audiosignal preprocessing discussed above, such as audio trimming, audiocompression and tokenization.

At block 603, the processing logic of the electronic display device maydetermine whether the data satisfies a criterion. The criterion mayinclude determining whether the data gathered by the microphone includesa form of voice data. This may involve processing an audio signal datato determine whether it reflects or is similar to an audio signature ofvoice data, as opposed to audio noise such as static, alarms, clappingor other non-voice audio data. The criterion may also ensure that theaudio signal data is of sufficient length to perform speech to textrecognition, for example, that the voice data exceeds a minimumthreshold duration, such as 1 second, 2 seconds or some other similarduration of time. The criterion may also require that the audio signaldata has a decibel level that exceeds a threshold decibel level. In oneexample, the threshold decibel level may be 20 decibels (dBs), 25 dBs,30 dBs or other similar amount and audio signals below the threshold maynot be considered voice data (and thus may not satisfy the criterion).When the audio signal data fails to satisfy the criterion, the methodbranches back to block 601 to receive additional data. When the audiosignal data satisfies the criterion, the method may proceed to block604.

At block 604, the processing logic of the electronic display device maygenerate a first message based on the data, wherein the first messageincludes at least a portion of the audio signal. In one example, thefirst message may include raw audio data gathered by the audio sensor.The raw audio data may be a continuous stream of audio information. Inanother example, the first message may include audio signal data thathas been processed to trim non-voice data from the beginning and end ofthe audio signal and may remove non-voice data (e.g., pauses) betweenwords.

At block 605, the processing logic of the electronic display device maytransmit the first message to a computing device external to theelectronic display device using a wireless connection. The computingdevice may perform speech to text processing on at least a portion ofthe audio signal using a speech recognition module as seen at block 606.The speech recognition module may produce a textual message that may beincluded within a second message.

At block 607, the processing logic of the electronic display device mayreceive the second message over the wireless connection. The secondmessage may contain a textual message produced by the speech recognitionmodule. In response to receiving the second message, the method mayproceed to block 608.

At block 608, the processing logic of the electronic display device maydisplay the textual message of the second message using the visualdisplay of the electronic display device. Responsive to completing theoperations described herein above with references to block 608, themethod may terminate.

FIG. 7 is a flow chart of an example method 700 for processing proximitysensor data and presenting (e.g., displaying, announcing) a messageusing the electronic display device. At block 701, the processing logicof the electronic display device may receive data gathered by aproximity sensor, motion sensor and/or communication module of theelectronic display device while attached to an object (e.g., beveragecontainer). For example, a motion sensor may gather data correspondingto motion of users near the object. Additionally, or alternatively, awireless communication module may detect when a computing device of auser enters the vicinity of the object based on detecting wirelesssignals therefrom. At block 702, the processing logic of the electronicdisplay device may process the data received by the proximity sensor,motion sensor and/or communication module. At block 703, the processinglogic of the electronic display device may determine whether the datasatisfies a criterion. The criterion may be whether the data representsa user (e.g., potential consumer) in the area. When analyzing data froma motion sensor this may involve distinguishing the motion of a userfrom other changes (e.g., lights turned on). When analyzing data from awireless module this may include determining if the computing device ofthe user contains the appropriate program (e.g., application) and/or hasa unique identifier corresponding to a unique identifier of a customer.For example, the electronic display device may store a list of uniqueidentifiers of computing devices of customers, where each uniqueidentifier is associated with a customer name. Processing logic maycompare a unique identifier of a detected computing device to storedunique identifiers. If a match is found, then processing logic maydetermine that the customer associated with that unique identifier hasbeen detected. When the processing logic of the electronic displaydetermines the criterion is not satisfied, it may branch back to block701 and gather additional data from the proximity sensor, motion sensorand/or communication module. When the processing logic determines thecriterion is satisfied, it may proceed to block 704.

At block 704, the processing logic of the electronic display device maygenerate a first message based on the data. The first message mayinclude a request to gather consumer information. The consumerinformation may include the name of the user, a birth date, age,favorite drink, demographic information or other personal information.The consumer information may also include user specified configurationsettings associated with the user interface module, such as the user'spersonal greeting or other similar settings. This information may bestored by an application associated with the electronic display devicethat is installed and/or executing on the computing device.

At block 705, the processing logic of the electronic display device maytransmit the first message to a computing device external to the objectusing a wireless connection. In response to receiving the first message,the computing device may process the request by gathering the requestedconsumer information and including it within a second message (e.g.,response), which may be sent back over the same wireless connection. Inanother example, the second message may also include advertisementmaterial that is selected based on the consumer information.

At block 706, the processing logic of the electronic display device mayreceive the second message. The second message may include content for awelcome message. For example, the second message may include the user'sname and the user's preferred personal greeting.

At block 707, the processing logic of the electronic display device maydisplay the second message to a user. This may involve illuminating thevisual display of the electronic display device with content of thesecond message (e.g., welcome message). The electronic display devicemay also announce the message using a speaker of the electronic displaydevice. Responsive to completing the operations described herein abovewith references to block 707, the method may terminate.

FIG. 8 is a flow chart of an example method 800 for processingfluid-level sensor data and presenting (e.g., displaying, announcing) amessage to a user using the electronic display device or otherelectronic device. At block 801, the processing logic of the electronicdevice may receive data gathered by a fluid-level sensor of theelectronic display device. The fluid-level sensor may be used to monitorchanges in the quantity of fluid in an object such as a bottle and maybe implemented using a variety of different mechanisms such as amechanical gyrator discussed above.

At block 802, the processing logic of the electronic device may processthe data to determine a quantity of fluid contained within the object.At block 803, the processing logic of the electronic device maydetermine whether the data satisfies a criterion. In one example, thecriterion may be whether the fluid level has changed. In anotherexample, the criterion may be whether the fluid level is below athreshold level. When the fluid level does not satisfy the criterion(e.g., is not below the threshold level), the method may branch to block801 and continue gathering data. When the fluid level satisfies thecriterion (e.g., has dropped below the threshold level), the method mayproceed to block 804.

At block 804, the processing logic of the electronic device may generatea first message based on the data gathered by the fluid-level sensor. Inone example, the first message may indicate that a replacement is neededusing an indicator variable. The indicator variable may be implementedusing a binary value, wherein a true value may indicate the objectshould be replaced and a false value may indicate the bottle does notneed to be replaced, or vice versa. In another example, the firstmessage may include the changed fluid-level and the processing logic ofthe computing device may perform subsequent processing to compare thefluid-level to a threshold level to determine whether the object shouldbe replaced. An indication of the determined fluid-level may be storedor communicated as, for example, a numeric value (e.g., integer value).

At block 805, the processing logic of the electronic device may transmitthe first message to a computing device external to the object using awireless connection, and in response to receiving the first message thecomputing device may process the first message.

At block 806, the processing logic of the computing device may have auser interface for ordering a replacement object. The user interface mayinclude an alert such as an audio alert or a visual alert (e.g., popupmessage, banner message or icon badge). The user interface may enablethe user to order a replacement object by displaying a map that marksone or more stores where a replacement may be purchased. It may alsoinclude the stores in a list with prices and contact information, whichmay be sorted based on price or distance.

The operations of blocks 807-808 are applicable if the electronic deviceis an electronic display device. At block 807, the processing device ofthe electric display device may receive a second message (e.g., areplacement message). The second message may have been generated by theremote computing device and may include a textual message.

At block 808, the processing logic of the electronic display device maydisplay the second message to a user. This may involve illuminating thevisual display with content of the second message (e.g., “Replace Me”,“I Have Been Ordered”). The electronic display device may also announcethe message using a speaker of the electronic display device. Responsiveto completing the operations described herein above with references toblock 808, the method may terminate.

In addition to the example systems and methods discussed above, theelectronic display device or other electronic device attached to anobject may also include other features. In one example, the electronicdevice may include a temperature sensor. The temperature sensor maymonitor the temperature of the contents and report on the temperature toa remote computing device (e.g., a user's mobile device). If theelectronic device is an electronic display device, it may display thetemperature on the object.

In another example, the electronic display device may have differentmodes or settings that restrict who has access to modify the object(e.g., private, broadcast, etc.). The settings may be preprogrammed orcontrolled by the people who have possession of the bottles. Forexample, a private mode may be enabled by a couple having a privatedinner and would like control over the object without other partiesdisplaying messages on their object. In another example, the broadcastmode may be used in various situations (e.g., at sporting events, socialgatherings, bars, or other similar events) to show messages, runcontests, advertisements, or other similar uses.

In some examples, the electronic display device or other electronicdevice may allow instructions to be provided or programmed or to receivethe input of a message to be shown on the display. An input device ofthe electronic display device may include an off switch to turn off thedisplay, enter buttons (or other input buttons), alphanumeric characters(e.g., all letters and numbers), and other similar inputs. Otherembodiments may include characters for various languages. Alternatively,the electronic display device may not include any buttons for inputtingmessages, and may rely on communication with an application forprogramming new messages. For example, an application installed on amobile computing device may include an interface (e.g., a keyboard shownin a touchscreen) for inputting characters to generate a message. Once amessage has been generated at a computing device, the computing devicemay send the message to the electronic display device for storage andlater display. Additionally, the application running on the computingdevice may include an audio recording option, and may record an audioinput. This audio input may be sent to the electronic display device andlater output via speakers of the electronic display device. The audiorecording may be output together with, or separate from, a text message.

In one example, first electronics of the electronic display device mayinclude a receiver, transmitter, processor, and power source, which maybe separate from a display portion of the electronic display device. Forexample, the first electronics may be located on the bottom of an objectwhile the display portion is located on a side of the object. Otherlocations may also be used, such as a groove or indention on the object.The electronics may be sealed to prevent moisture from interfering ordegrading operation.

In another example, a platform or base may identify and connect tomultiple containers or objects. Exemplary platforms may include shelves,counters, table tops, coasters, bar shelves, or other similar platformsfor display or storage of beverage objects. In such a scenario, theplatform or base may serve as a central control system to synchronizethe displays of the containers or objects such that they may serve as asingle synchronized display. For example, if five objects are placed ina row, a message or image may scroll from the display across all objectsrather than a single object. The platform may also take into account theposition of the objects such that the display proceeds uninterrupted.For example, only showing the message or image across the viewableportion of the display and not the portion hidden by a curve of theobject or identifying when an object is removed and continuing themessage or image across the remaining objects and omitting the removedobject.

In another example, the platform may serve as a charging station for thecontainers placed on or within it. Such a charging station may operateon wired connection to the containers or wireless charging throughinduction.

The platform or base may, through proximity sensors or transceivers,identify and connect to containers or objects placed on or married toit. For example, a coaster serving as a base may identify a specificcontainer or object placed upon it. The base may then transmit images tothe object or assist in connecting the object to other objects.

In an optional example, the platform or base may also project aholographic or three dimensional image within the object or off theobject similar to methods described above. The holographic or otherthree-dimensional image may appear to a user as being enclosed by thebottle. In such an embodiment, the holographic or three dimensionalimage may be projected from the base of the bottle. In otherembodiments, the holographic or three dimensional image may be projectedto the interior of the bottle surface. In yet other embodiments, theholographic or three dimensional image may appear to a viewer asappearing outside the bottle surface. In all embodiments, theholographic or three dimensional image may be static or dynamic

FIG. 9 depicts a block diagram of a computer system operating inaccordance with one or more aspects of the present disclosure. Invarious illustrative examples, computer system 900 may correspond toelectronic display device 110 or computing devices 120A or 120B of FIG.1.

In certain implementations, computer system 900 may be connected (e.g.,via a network, such as a Local Area Network (LAN), an intranet, anextranet, or the Internet) to other computer systems. Computer system900 may operate in the capacity of a server or a client computer in aclient-server environment, or as a peer computer in a peer-to-peer ordistributed network environment. Computer system 900 may be provided bya personal computer (PC), a tablet PC, a set-top box (STB), a PersonalDigital Assistant (PDA), a cellular telephone, a web appliance, aserver, a network router, switch or bridge, an electronic displaydevice, or any device capable of executing a set of instructions(sequential or otherwise) that specify actions to be taken by thatdevice. Further, the term “computer” shall include any collection ofcomputers that individually or jointly execute a set (or multiple sets)of instructions to perform any one or more of the methods describedherein.

In a further aspect, the computer system 900 may include a processingdevice 902, a volatile memory 904 (e.g., random access memory (RAM)), anon-volatile memory 906 (e.g., read-only memory (ROM) orelectrically-erasable programmable ROM (EEPROM)), and/or a data storagedevice 916, which may communicate with each other via a bus 908.

Processing device 902 may be provided by one or more processing devicessuch as a general purpose processor (such as, for example, a complexinstruction set computing (CISC) microprocessor, a reduced instructionset computing (RISC) microprocessor, a very long instruction word (VLIW)microprocessor, a microprocessor implementing other types of instructionsets, or a microprocessor implementing a combination of types ofinstruction sets) or a specialized processor (such as, for example, anapplication specific integrated circuit (ASIC), a field programmablegate array (FPGA), a digital signal processor (DSP), or a networkprocessor).

Computer system 900 may further include a network interface device 922(e.g., a wireless communication module, wireless modem, etc.). Computersystem 900 also may include a video display unit 910 (e.g., an LCD), analphanumeric input device 912 (e.g., a keyboard), and a cursor controldevice 914 (e.g., a mouse).

Data storage device 916 may include a non-transitory computer-readablestorage medium 924 on which it may store instructions 926 encoding anyone or more of the methods or functions described herein, includinginstructions encoding electronic display device 110 of FIG. 1 toimplement methods 500, 600, 700 or 800 for providing (e.g., displaying,announcing) messages to users.

Instructions 926 may also reside, completely or partially, within mainmemory 904 and/or within processing device 902 during execution thereofby computer system 900, hence, main memory 904 and processing device 902may also constitute machine-readable storage media.

While computer-readable storage medium 924 is shown in the illustrativeexamples as a single medium, the term “computer-readable storage medium”shall include a single medium or multiple media (e.g., a centralized ordistributed database, and/or associated caches and servers) that storethe one or more sets of executable instructions. The term“computer-readable storage medium” shall also include any tangiblemedium that is capable of storing or encoding a set of instructions forexecution by a computer or device that cause the computer or device toperform any one or more of the methods described herein. The term“computer-readable storage medium” shall include, but not be limited to,solid-state memories, optical media, and magnetic media.

The methods, components, and features described herein may beimplemented by discrete hardware components or may be integrated in thefunctionality of other hardware components such as ASICS, FPGAs, DSPs orsimilar devices. In addition, the methods, components, and features maybe implemented by firmware modules or functional circuitry withinhardware devices. Further, the methods, components, and features may beimplemented in any combination of hardware devices and softwarecomponents, or only in software.

Unless specifically stated otherwise, terms such as “receiving”,“identifying”, “determining”, “transmitting”, “displaying”, or the like,refer to actions and processes performed or implemented by a computersystem that manipulates and transforms data represented as physical(electronic) quantities within the computer system registers andmemories into other data similarly represented as physical quantitieswithin the computer system memories or registers or other suchinformation storage or display devices. Also, the terms “first,”“second,” “third,” “fourth,” etc. as used herein are meant as labels todistinguish among different elements and may not necessarily have anordinal meaning according to their numerical designation.

Examples described herein also relate to an apparatus for performing themethods described herein. This apparatus may be specially constructedfor performing the methods described herein, or it may include a generalpurpose computer system selectively programmed by a computer programstored in the computer system. Such a computer program may be stored ina computer-readable tangible storage medium.

The methods and illustrative examples described herein are notinherently related to any particular computer or other apparatus.Various general purpose systems may be used in accordance with theteachings described herein, or it may prove convenient to construct morespecialized apparatus to perform methods 500, 600, 700, 800 and/or eachof its individual functions, routines, subroutines, or operations.Examples of the structure for a variety of these systems are set forthin the description above.

The above description is intended to be illustrative, and notrestrictive. Although the present disclosure has been described withreferences to specific illustrative examples and implementations, itwill be recognized that the present disclosure is not limited to theexamples and implementations described. The scope of the disclosureshould be determined with reference to the following claims, along withthe full scope of equivalents to which the claims are entitled.

What is claimed is:
 1. A method comprising: receiving, by an electronicdisplay device attached to an object, data comprising proximity sensordata; determining, by the electronic display device, whether the datasatisfies a criterion comprising a proximity threshold, whereinsatisfying the criterion indicates a presence of a mobile device of auser; transmitting, by the electronic display device, a first message tothe mobile device over a wireless connection; receiving a second messagefrom the mobile device, the second message comprising user data; andresponsive to receiving the second message from the mobile device,presenting, by the electronic display device, a message comprising theuser data.
 2. The method of claim 1, wherein the object is a containerand the mobile device comprises an application for communicating withthe electronic display device attached to the container.
 3. The methodof claim 1, wherein determining whether the data satisfies the criterioncomprises determining whether the mobile device is within the proximitythreshold based on a signal from the mobile device.
 4. The method ofclaim 3, wherein the message presented by the electronic display devicecomprises at least one of a welcome message or an advertisement directedto the user associated with the mobile device, at least one of thewelcome message or the advertisement to be displayed on the electronicdisplay device by an application of the mobile device.
 5. The method ofclaim 1, wherein the message comprises a personalized message comprisingan identification of the user associated with the mobile device.
 6. Themethod of claim 2, wherein the data comprises measurement informationgenerated by a sensor associated with the electronic display device, themeasurement information indicating a quantity of a fluid in thecontainer.
 7. The method of claim 6, wherein the criterion comprises aquantity threshold and wherein determining whether the data satisfiesthe criterion comprises determining whether the quantity of the fluid inthe container is below the quantity threshold.
 8. The method of claim 7,wherein the first message and the second message indicate that thequantity of the fluid is below the quantity threshold.
 9. The method ofclaim 1, wherein the data comprises inventory information indicating aquantity of objects, wherein the criterion comprises a quantitythreshold, wherein determining whether the data satisfies the criterioncomprises determining whether the quantity of objects is below thequantity threshold, and wherein the first message comprises arecommendation to order additional objects.
 10. The method of claim 1,wherein the data comprises an audio signal containing voice datarecorded by a microphone of the electronic display device, and whereinthe first message comprises at least a portion of the audio signal andthe second message comprises a textual message generated by at least oneof the mobile device or another computing device based on performingspeech to text processing on at least the portion of the audio signal.11. The method of claim 1, wherein the data comprises an audio signalcontaining voice data recorded by a microphone of the electronic displaydevice, the method further comprising: processing the audio signal bythe electronic display device; determining that the audio signalcomprises a voice command based on the processing; and performing anoperation responsive to the voice command.
 12. The method of claim 1,wherein the user data comprises a name of the user of the mobile deviceand wherein presenting the message comprises the electronic displaydevice presenting a message comprising the name of the user of themobile device.
 13. The method of claim 1, wherein the method furthercomprises: analyzing, by the electronic display device, motion data ofthe object attached to the electronic display device; detecting, by theelectronic display device, a motion signature of the object based on themotion data; and presenting, by the electronic display device, aparticular message associated with the motion signature of the object.14. A system comprising: a memory; a processor operatively coupled tothe memory, the processor configured to: receive data comprisingproximity sensor data of an electronic display device attached to anobject; determine whether the data satisfies a criterion comprising aproximity threshold, wherein satisfying the criterion indicates a mobiledevice of a user is proximate to the electronic display device; transmita first message to the mobile device over a wireless connection; receivea second message from the mobile device, the second message comprisinguser data; and responsive to receiving the second message from themobile device, presenting, by the electronic display device, a messagecomprising the user data.
 15. The system of claim 14, wherein the objectis a container and the mobile device comprises an application forcommunicating with the electronic display device attached to thecontainer.
 16. The system of claim 14, wherein determining whether thedata satisfies the criterion comprises determining whether the mobiledevice is within the proximity threshold based on a signal from themobile device.
 17. The system of claim 16, wherein the message presentedby the electronic display device comprises at least one of a welcomemessage or an advertisement directed to the user associated with themobile device, at least one of the welcome message or the advertisementto be displayed on the electronic display device by an application ofthe mobile device.
 18. A non-transitory computer readable storage mediumcomprising instructions to cause a processor to: receive, by anelectronic display device, data comprising proximity sensor data;determine, by the electronic display device, whether the data satisfiesa criterion comprising a proximity threshold, wherein satisfying thecriterion indicates a presence of a mobile device of a user; transmit,by the electronic display device, a first message to the mobile deviceover a wireless connection; receive a second message from the mobiledevice, the second message comprising user data; and responsive to thereceipt of the second message from the mobile device, present, by theelectronic display device, a message comprising the user data.
 19. Thenon-transitory computer readable storage medium of claim 18, wherein theobject is a container and the mobile device comprises an application forcommunicating with the electronic display device attached to thecontainer.
 20. The non-transitory computer readable storage medium ofclaim 18, wherein determining whether the data satisfies the criterioncomprises determining whether the mobile device is within the proximitythreshold based on a signal from the mobile device.
 21. Thenon-transitory computer readable storage medium of claim 20, wherein themessage presented by the electronic display device comprises at leastone of a welcome message or an advertisement directed to the userassociated with the mobile device, at least one of the welcome messageor the advertisement to be displayed on the electronic display device byan application of the mobile device.